package com.hzhr.extdevice.model.database.device;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class DevIotDeviceExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public DevIotDeviceExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("ID is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("ID is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("ID =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("ID <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("ID >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("ID >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("ID <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("ID <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("ID in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("ID not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("ID between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("ID not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOutIdIsNull() {
            addCriterion("OUT_ID is null");
            return (Criteria) this;
        }

        public Criteria andOutIdIsNotNull() {
            addCriterion("OUT_ID is not null");
            return (Criteria) this;
        }

        public Criteria andOutIdEqualTo(String value) {
            addCriterion("OUT_ID =", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdNotEqualTo(String value) {
            addCriterion("OUT_ID <>", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdGreaterThan(String value) {
            addCriterion("OUT_ID >", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdGreaterThanOrEqualTo(String value) {
            addCriterion("OUT_ID >=", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdLessThan(String value) {
            addCriterion("OUT_ID <", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdLessThanOrEqualTo(String value) {
            addCriterion("OUT_ID <=", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdLike(String value) {
            addCriterion("OUT_ID like", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdNotLike(String value) {
            addCriterion("OUT_ID not like", value, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdIn(List<String> values) {
            addCriterion("OUT_ID in", values, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdNotIn(List<String> values) {
            addCriterion("OUT_ID not in", values, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdBetween(String value1, String value2) {
            addCriterion("OUT_ID between", value1, value2, "outId");
            return (Criteria) this;
        }

        public Criteria andOutIdNotBetween(String value1, String value2) {
            addCriterion("OUT_ID not between", value1, value2, "outId");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("CODE is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("CODE is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("CODE =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("CODE <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("CODE >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("CODE >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("CODE <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("CODE <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("CODE like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("CODE not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("CODE in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("CODE not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("CODE between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("CODE not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andDesIsNull() {
            addCriterion("DES is null");
            return (Criteria) this;
        }

        public Criteria andDesIsNotNull() {
            addCriterion("DES is not null");
            return (Criteria) this;
        }

        public Criteria andDesEqualTo(String value) {
            addCriterion("DES =", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesNotEqualTo(String value) {
            addCriterion("DES <>", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesGreaterThan(String value) {
            addCriterion("DES >", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesGreaterThanOrEqualTo(String value) {
            addCriterion("DES >=", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesLessThan(String value) {
            addCriterion("DES <", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesLessThanOrEqualTo(String value) {
            addCriterion("DES <=", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesLike(String value) {
            addCriterion("DES like", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesNotLike(String value) {
            addCriterion("DES not like", value, "des");
            return (Criteria) this;
        }

        public Criteria andDesIn(List<String> values) {
            addCriterion("DES in", values, "des");
            return (Criteria) this;
        }

        public Criteria andDesNotIn(List<String> values) {
            addCriterion("DES not in", values, "des");
            return (Criteria) this;
        }

        public Criteria andDesBetween(String value1, String value2) {
            addCriterion("DES between", value1, value2, "des");
            return (Criteria) this;
        }

        public Criteria andDesNotBetween(String value1, String value2) {
            addCriterion("DES not between", value1, value2, "des");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeIsNull() {
            addCriterion("CATEGORY_CODE is null");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeIsNotNull() {
            addCriterion("CATEGORY_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeEqualTo(String value) {
            addCriterion("CATEGORY_CODE =", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotEqualTo(String value) {
            addCriterion("CATEGORY_CODE <>", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeGreaterThan(String value) {
            addCriterion("CATEGORY_CODE >", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeGreaterThanOrEqualTo(String value) {
            addCriterion("CATEGORY_CODE >=", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeLessThan(String value) {
            addCriterion("CATEGORY_CODE <", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeLessThanOrEqualTo(String value) {
            addCriterion("CATEGORY_CODE <=", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeLike(String value) {
            addCriterion("CATEGORY_CODE like", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotLike(String value) {
            addCriterion("CATEGORY_CODE not like", value, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeIn(List<String> values) {
            addCriterion("CATEGORY_CODE in", values, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotIn(List<String> values) {
            addCriterion("CATEGORY_CODE not in", values, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeBetween(String value1, String value2) {
            addCriterion("CATEGORY_CODE between", value1, value2, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andCategoryCodeNotBetween(String value1, String value2) {
            addCriterion("CATEGORY_CODE not between", value1, value2, "categoryCode");
            return (Criteria) this;
        }

        public Criteria andTypeIdIsNull() {
            addCriterion("TYPE_ID is null");
            return (Criteria) this;
        }

        public Criteria andTypeIdIsNotNull() {
            addCriterion("TYPE_ID is not null");
            return (Criteria) this;
        }

        public Criteria andTypeIdEqualTo(Integer value) {
            addCriterion("TYPE_ID =", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdNotEqualTo(Integer value) {
            addCriterion("TYPE_ID <>", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdGreaterThan(Integer value) {
            addCriterion("TYPE_ID >", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("TYPE_ID >=", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdLessThan(Integer value) {
            addCriterion("TYPE_ID <", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdLessThanOrEqualTo(Integer value) {
            addCriterion("TYPE_ID <=", value, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdIn(List<Integer> values) {
            addCriterion("TYPE_ID in", values, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdNotIn(List<Integer> values) {
            addCriterion("TYPE_ID not in", values, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdBetween(Integer value1, Integer value2) {
            addCriterion("TYPE_ID between", value1, value2, "typeId");
            return (Criteria) this;
        }

        public Criteria andTypeIdNotBetween(Integer value1, Integer value2) {
            addCriterion("TYPE_ID not between", value1, value2, "typeId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNull() {
            addCriterion("COMPANY_ID is null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNotNull() {
            addCriterion("COMPANY_ID is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdEqualTo(Integer value) {
            addCriterion("COMPANY_ID =", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotEqualTo(Integer value) {
            addCriterion("COMPANY_ID <>", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThan(Integer value) {
            addCriterion("COMPANY_ID >", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("COMPANY_ID >=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThan(Integer value) {
            addCriterion("COMPANY_ID <", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThanOrEqualTo(Integer value) {
            addCriterion("COMPANY_ID <=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(List<Integer> values) {
            addCriterion("COMPANY_ID in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(List<Integer> values) {
            addCriterion("COMPANY_ID not in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdBetween(Integer value1, Integer value2) {
            addCriterion("COMPANY_ID between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("COMPANY_ID not between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdIsNull() {
            addCriterion("GAS_COMPANY_ID is null");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdIsNotNull() {
            addCriterion("GAS_COMPANY_ID is not null");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdEqualTo(Integer value) {
            addCriterion("GAS_COMPANY_ID =", value, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdNotEqualTo(Integer value) {
            addCriterion("GAS_COMPANY_ID <>", value, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdGreaterThan(Integer value) {
            addCriterion("GAS_COMPANY_ID >", value, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("GAS_COMPANY_ID >=", value, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdLessThan(Integer value) {
            addCriterion("GAS_COMPANY_ID <", value, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdLessThanOrEqualTo(Integer value) {
            addCriterion("GAS_COMPANY_ID <=", value, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdIn(List<Integer> values) {
            addCriterion("GAS_COMPANY_ID in", values, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdNotIn(List<Integer> values) {
            addCriterion("GAS_COMPANY_ID not in", values, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdBetween(Integer value1, Integer value2) {
            addCriterion("GAS_COMPANY_ID between", value1, value2, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andGasCompanyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("GAS_COMPANY_ID not between", value1, value2, "gasCompanyId");
            return (Criteria) this;
        }

        public Criteria andDeptIdIsNull() {
            addCriterion("DEPT_ID is null");
            return (Criteria) this;
        }

        public Criteria andDeptIdIsNotNull() {
            addCriterion("DEPT_ID is not null");
            return (Criteria) this;
        }

        public Criteria andDeptIdEqualTo(Integer value) {
            addCriterion("DEPT_ID =", value, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdNotEqualTo(Integer value) {
            addCriterion("DEPT_ID <>", value, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdGreaterThan(Integer value) {
            addCriterion("DEPT_ID >", value, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("DEPT_ID >=", value, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdLessThan(Integer value) {
            addCriterion("DEPT_ID <", value, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdLessThanOrEqualTo(Integer value) {
            addCriterion("DEPT_ID <=", value, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdIn(List<Integer> values) {
            addCriterion("DEPT_ID in", values, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdNotIn(List<Integer> values) {
            addCriterion("DEPT_ID not in", values, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdBetween(Integer value1, Integer value2) {
            addCriterion("DEPT_ID between", value1, value2, "deptId");
            return (Criteria) this;
        }

        public Criteria andDeptIdNotBetween(Integer value1, Integer value2) {
            addCriterion("DEPT_ID not between", value1, value2, "deptId");
            return (Criteria) this;
        }

        public Criteria andSimNoIsNull() {
            addCriterion("SIM_NO is null");
            return (Criteria) this;
        }

        public Criteria andSimNoIsNotNull() {
            addCriterion("SIM_NO is not null");
            return (Criteria) this;
        }

        public Criteria andSimNoEqualTo(String value) {
            addCriterion("SIM_NO =", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoNotEqualTo(String value) {
            addCriterion("SIM_NO <>", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoGreaterThan(String value) {
            addCriterion("SIM_NO >", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoGreaterThanOrEqualTo(String value) {
            addCriterion("SIM_NO >=", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoLessThan(String value) {
            addCriterion("SIM_NO <", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoLessThanOrEqualTo(String value) {
            addCriterion("SIM_NO <=", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoLike(String value) {
            addCriterion("SIM_NO like", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoNotLike(String value) {
            addCriterion("SIM_NO not like", value, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoIn(List<String> values) {
            addCriterion("SIM_NO in", values, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoNotIn(List<String> values) {
            addCriterion("SIM_NO not in", values, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoBetween(String value1, String value2) {
            addCriterion("SIM_NO between", value1, value2, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimNoNotBetween(String value1, String value2) {
            addCriterion("SIM_NO not between", value1, value2, "simNo");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeIsNull() {
            addCriterion("SIM_TYPE_CODE is null");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeIsNotNull() {
            addCriterion("SIM_TYPE_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeEqualTo(String value) {
            addCriterion("SIM_TYPE_CODE =", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeNotEqualTo(String value) {
            addCriterion("SIM_TYPE_CODE <>", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeGreaterThan(String value) {
            addCriterion("SIM_TYPE_CODE >", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeGreaterThanOrEqualTo(String value) {
            addCriterion("SIM_TYPE_CODE >=", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeLessThan(String value) {
            addCriterion("SIM_TYPE_CODE <", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeLessThanOrEqualTo(String value) {
            addCriterion("SIM_TYPE_CODE <=", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeLike(String value) {
            addCriterion("SIM_TYPE_CODE like", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeNotLike(String value) {
            addCriterion("SIM_TYPE_CODE not like", value, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeIn(List<String> values) {
            addCriterion("SIM_TYPE_CODE in", values, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeNotIn(List<String> values) {
            addCriterion("SIM_TYPE_CODE not in", values, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeBetween(String value1, String value2) {
            addCriterion("SIM_TYPE_CODE between", value1, value2, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andSimTypeCodeNotBetween(String value1, String value2) {
            addCriterion("SIM_TYPE_CODE not between", value1, value2, "simTypeCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeIsNull() {
            addCriterion("IOT_PLATFORM_CODE is null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeIsNotNull() {
            addCriterion("IOT_PLATFORM_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeEqualTo(String value) {
            addCriterion("IOT_PLATFORM_CODE =", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeNotEqualTo(String value) {
            addCriterion("IOT_PLATFORM_CODE <>", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeGreaterThan(String value) {
            addCriterion("IOT_PLATFORM_CODE >", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeGreaterThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_CODE >=", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeLessThan(String value) {
            addCriterion("IOT_PLATFORM_CODE <", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeLessThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_CODE <=", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeLike(String value) {
            addCriterion("IOT_PLATFORM_CODE like", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeNotLike(String value) {
            addCriterion("IOT_PLATFORM_CODE not like", value, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeIn(List<String> values) {
            addCriterion("IOT_PLATFORM_CODE in", values, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeNotIn(List<String> values) {
            addCriterion("IOT_PLATFORM_CODE not in", values, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_CODE between", value1, value2, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformCodeNotBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_CODE not between", value1, value2, "iotPlatformCode");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiIsNull() {
            addCriterion("IOT_PLATFORM_IMEI is null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiIsNotNull() {
            addCriterion("IOT_PLATFORM_IMEI is not null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IMEI =", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiNotEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IMEI <>", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiGreaterThan(String value) {
            addCriterion("IOT_PLATFORM_IMEI >", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiGreaterThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IMEI >=", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiLessThan(String value) {
            addCriterion("IOT_PLATFORM_IMEI <", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiLessThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IMEI <=", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiLike(String value) {
            addCriterion("IOT_PLATFORM_IMEI like", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiNotLike(String value) {
            addCriterion("IOT_PLATFORM_IMEI not like", value, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiIn(List<String> values) {
            addCriterion("IOT_PLATFORM_IMEI in", values, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiNotIn(List<String> values) {
            addCriterion("IOT_PLATFORM_IMEI not in", values, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_IMEI between", value1, value2, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformImeiNotBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_IMEI not between", value1, value2, "iotPlatformImei");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdIsNull() {
            addCriterion("IOT_PLATFORM_DEVICE_ID is null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdIsNotNull() {
            addCriterion("IOT_PLATFORM_DEVICE_ID is not null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdEqualTo(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID =", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdNotEqualTo(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID <>", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdGreaterThan(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID >", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdGreaterThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID >=", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdLessThan(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID <", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdLessThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID <=", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdLike(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID like", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdNotLike(String value) {
            addCriterion("IOT_PLATFORM_DEVICE_ID not like", value, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdIn(List<String> values) {
            addCriterion("IOT_PLATFORM_DEVICE_ID in", values, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdNotIn(List<String> values) {
            addCriterion("IOT_PLATFORM_DEVICE_ID not in", values, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_DEVICE_ID between", value1, value2, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformDeviceIdNotBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_DEVICE_ID not between", value1, value2, "iotPlatformDeviceId");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpIsNull() {
            addCriterion("IOT_PLATFORM_IP is null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpIsNotNull() {
            addCriterion("IOT_PLATFORM_IP is not null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IP =", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpNotEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IP <>", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpGreaterThan(String value) {
            addCriterion("IOT_PLATFORM_IP >", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpGreaterThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IP >=", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpLessThan(String value) {
            addCriterion("IOT_PLATFORM_IP <", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpLessThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_IP <=", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpLike(String value) {
            addCriterion("IOT_PLATFORM_IP like", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpNotLike(String value) {
            addCriterion("IOT_PLATFORM_IP not like", value, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpIn(List<String> values) {
            addCriterion("IOT_PLATFORM_IP in", values, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpNotIn(List<String> values) {
            addCriterion("IOT_PLATFORM_IP not in", values, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_IP between", value1, value2, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformIpNotBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_IP not between", value1, value2, "iotPlatformIp");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortIsNull() {
            addCriterion("IOT_PLATFORM_PORT is null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortIsNotNull() {
            addCriterion("IOT_PLATFORM_PORT is not null");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortEqualTo(String value) {
            addCriterion("IOT_PLATFORM_PORT =", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortNotEqualTo(String value) {
            addCriterion("IOT_PLATFORM_PORT <>", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortGreaterThan(String value) {
            addCriterion("IOT_PLATFORM_PORT >", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortGreaterThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_PORT >=", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortLessThan(String value) {
            addCriterion("IOT_PLATFORM_PORT <", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortLessThanOrEqualTo(String value) {
            addCriterion("IOT_PLATFORM_PORT <=", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortLike(String value) {
            addCriterion("IOT_PLATFORM_PORT like", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortNotLike(String value) {
            addCriterion("IOT_PLATFORM_PORT not like", value, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortIn(List<String> values) {
            addCriterion("IOT_PLATFORM_PORT in", values, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortNotIn(List<String> values) {
            addCriterion("IOT_PLATFORM_PORT not in", values, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_PORT between", value1, value2, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andIotPlatformPortNotBetween(String value1, String value2) {
            addCriterion("IOT_PLATFORM_PORT not between", value1, value2, "iotPlatformPort");
            return (Criteria) this;
        }

        public Criteria andAddressIsNull() {
            addCriterion("ADDRESS is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("ADDRESS is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("ADDRESS =", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotEqualTo(String value) {
            addCriterion("ADDRESS <>", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("ADDRESS >", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThanOrEqualTo(String value) {
            addCriterion("ADDRESS >=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThan(String value) {
            addCriterion("ADDRESS <", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThanOrEqualTo(String value) {
            addCriterion("ADDRESS <=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLike(String value) {
            addCriterion("ADDRESS like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotLike(String value) {
            addCriterion("ADDRESS not like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressIn(List<String> values) {
            addCriterion("ADDRESS in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotIn(List<String> values) {
            addCriterion("ADDRESS not in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressBetween(String value1, String value2) {
            addCriterion("ADDRESS between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotBetween(String value1, String value2) {
            addCriterion("ADDRESS not between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andLongitudeIsNull() {
            addCriterion("LONGITUDE is null");
            return (Criteria) this;
        }

        public Criteria andLongitudeIsNotNull() {
            addCriterion("LONGITUDE is not null");
            return (Criteria) this;
        }

        public Criteria andLongitudeEqualTo(Double value) {
            addCriterion("LONGITUDE =", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotEqualTo(Double value) {
            addCriterion("LONGITUDE <>", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeGreaterThan(Double value) {
            addCriterion("LONGITUDE >", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeGreaterThanOrEqualTo(Double value) {
            addCriterion("LONGITUDE >=", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeLessThan(Double value) {
            addCriterion("LONGITUDE <", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeLessThanOrEqualTo(Double value) {
            addCriterion("LONGITUDE <=", value, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeIn(List<Double> values) {
            addCriterion("LONGITUDE in", values, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotIn(List<Double> values) {
            addCriterion("LONGITUDE not in", values, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeBetween(Double value1, Double value2) {
            addCriterion("LONGITUDE between", value1, value2, "longitude");
            return (Criteria) this;
        }

        public Criteria andLongitudeNotBetween(Double value1, Double value2) {
            addCriterion("LONGITUDE not between", value1, value2, "longitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeIsNull() {
            addCriterion("LATITUDE is null");
            return (Criteria) this;
        }

        public Criteria andLatitudeIsNotNull() {
            addCriterion("LATITUDE is not null");
            return (Criteria) this;
        }

        public Criteria andLatitudeEqualTo(Double value) {
            addCriterion("LATITUDE =", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotEqualTo(Double value) {
            addCriterion("LATITUDE <>", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeGreaterThan(Double value) {
            addCriterion("LATITUDE >", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeGreaterThanOrEqualTo(Double value) {
            addCriterion("LATITUDE >=", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeLessThan(Double value) {
            addCriterion("LATITUDE <", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeLessThanOrEqualTo(Double value) {
            addCriterion("LATITUDE <=", value, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeIn(List<Double> values) {
            addCriterion("LATITUDE in", values, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotIn(List<Double> values) {
            addCriterion("LATITUDE not in", values, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeBetween(Double value1, Double value2) {
            addCriterion("LATITUDE between", value1, value2, "latitude");
            return (Criteria) this;
        }

        public Criteria andLatitudeNotBetween(Double value1, Double value2) {
            addCriterion("LATITUDE not between", value1, value2, "latitude");
            return (Criteria) this;
        }

        public Criteria andBindStatusIsNull() {
            addCriterion("BIND_STATUS is null");
            return (Criteria) this;
        }

        public Criteria andBindStatusIsNotNull() {
            addCriterion("BIND_STATUS is not null");
            return (Criteria) this;
        }

        public Criteria andBindStatusEqualTo(String value) {
            addCriterion("BIND_STATUS =", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusNotEqualTo(String value) {
            addCriterion("BIND_STATUS <>", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusGreaterThan(String value) {
            addCriterion("BIND_STATUS >", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusGreaterThanOrEqualTo(String value) {
            addCriterion("BIND_STATUS >=", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusLessThan(String value) {
            addCriterion("BIND_STATUS <", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusLessThanOrEqualTo(String value) {
            addCriterion("BIND_STATUS <=", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusLike(String value) {
            addCriterion("BIND_STATUS like", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusNotLike(String value) {
            addCriterion("BIND_STATUS not like", value, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusIn(List<String> values) {
            addCriterion("BIND_STATUS in", values, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusNotIn(List<String> values) {
            addCriterion("BIND_STATUS not in", values, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusBetween(String value1, String value2) {
            addCriterion("BIND_STATUS between", value1, value2, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andBindStatusNotBetween(String value1, String value2) {
            addCriterion("BIND_STATUS not between", value1, value2, "bindStatus");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdIsNull() {
            addCriterion("SALE_USER_ID is null");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdIsNotNull() {
            addCriterion("SALE_USER_ID is not null");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdEqualTo(Integer value) {
            addCriterion("SALE_USER_ID =", value, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdNotEqualTo(Integer value) {
            addCriterion("SALE_USER_ID <>", value, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdGreaterThan(Integer value) {
            addCriterion("SALE_USER_ID >", value, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("SALE_USER_ID >=", value, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdLessThan(Integer value) {
            addCriterion("SALE_USER_ID <", value, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("SALE_USER_ID <=", value, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdIn(List<Integer> values) {
            addCriterion("SALE_USER_ID in", values, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdNotIn(List<Integer> values) {
            addCriterion("SALE_USER_ID not in", values, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdBetween(Integer value1, Integer value2) {
            addCriterion("SALE_USER_ID between", value1, value2, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("SALE_USER_ID not between", value1, value2, "saleUserId");
            return (Criteria) this;
        }

        public Criteria andSaleTimeIsNull() {
            addCriterion("SALE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andSaleTimeIsNotNull() {
            addCriterion("SALE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andSaleTimeEqualTo(Date value) {
            addCriterion("SALE_TIME =", value, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeNotEqualTo(Date value) {
            addCriterion("SALE_TIME <>", value, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeGreaterThan(Date value) {
            addCriterion("SALE_TIME >", value, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("SALE_TIME >=", value, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeLessThan(Date value) {
            addCriterion("SALE_TIME <", value, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeLessThanOrEqualTo(Date value) {
            addCriterion("SALE_TIME <=", value, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeIn(List<Date> values) {
            addCriterion("SALE_TIME in", values, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeNotIn(List<Date> values) {
            addCriterion("SALE_TIME not in", values, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeBetween(Date value1, Date value2) {
            addCriterion("SALE_TIME between", value1, value2, "saleTime");
            return (Criteria) this;
        }

        public Criteria andSaleTimeNotBetween(Date value1, Date value2) {
            addCriterion("SALE_TIME not between", value1, value2, "saleTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeIsNull() {
            addCriterion("REPORT_TIME is null");
            return (Criteria) this;
        }

        public Criteria andReportTimeIsNotNull() {
            addCriterion("REPORT_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andReportTimeEqualTo(String value) {
            addCriterion("REPORT_TIME =", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotEqualTo(String value) {
            addCriterion("REPORT_TIME <>", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeGreaterThan(String value) {
            addCriterion("REPORT_TIME >", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_TIME >=", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeLessThan(String value) {
            addCriterion("REPORT_TIME <", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeLessThanOrEqualTo(String value) {
            addCriterion("REPORT_TIME <=", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeLike(String value) {
            addCriterion("REPORT_TIME like", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotLike(String value) {
            addCriterion("REPORT_TIME not like", value, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeIn(List<String> values) {
            addCriterion("REPORT_TIME in", values, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotIn(List<String> values) {
            addCriterion("REPORT_TIME not in", values, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeBetween(String value1, String value2) {
            addCriterion("REPORT_TIME between", value1, value2, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportTimeNotBetween(String value1, String value2) {
            addCriterion("REPORT_TIME not between", value1, value2, "reportTime");
            return (Criteria) this;
        }

        public Criteria andReportPeriodIsNull() {
            addCriterion("REPORT_PERIOD is null");
            return (Criteria) this;
        }

        public Criteria andReportPeriodIsNotNull() {
            addCriterion("REPORT_PERIOD is not null");
            return (Criteria) this;
        }

        public Criteria andReportPeriodEqualTo(String value) {
            addCriterion("REPORT_PERIOD =", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodNotEqualTo(String value) {
            addCriterion("REPORT_PERIOD <>", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodGreaterThan(String value) {
            addCriterion("REPORT_PERIOD >", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodGreaterThanOrEqualTo(String value) {
            addCriterion("REPORT_PERIOD >=", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodLessThan(String value) {
            addCriterion("REPORT_PERIOD <", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodLessThanOrEqualTo(String value) {
            addCriterion("REPORT_PERIOD <=", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodLike(String value) {
            addCriterion("REPORT_PERIOD like", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodNotLike(String value) {
            addCriterion("REPORT_PERIOD not like", value, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodIn(List<String> values) {
            addCriterion("REPORT_PERIOD in", values, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodNotIn(List<String> values) {
            addCriterion("REPORT_PERIOD not in", values, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodBetween(String value1, String value2) {
            addCriterion("REPORT_PERIOD between", value1, value2, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportPeriodNotBetween(String value1, String value2) {
            addCriterion("REPORT_PERIOD not between", value1, value2, "reportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodIsNull() {
            addCriterion("EXCEPTION_REPORT_PERIOD is null");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodIsNotNull() {
            addCriterion("EXCEPTION_REPORT_PERIOD is not null");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodEqualTo(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD =", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodNotEqualTo(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD <>", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodGreaterThan(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD >", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodGreaterThanOrEqualTo(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD >=", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodLessThan(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD <", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodLessThanOrEqualTo(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD <=", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodLike(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD like", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodNotLike(String value) {
            addCriterion("EXCEPTION_REPORT_PERIOD not like", value, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodIn(List<String> values) {
            addCriterion("EXCEPTION_REPORT_PERIOD in", values, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodNotIn(List<String> values) {
            addCriterion("EXCEPTION_REPORT_PERIOD not in", values, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodBetween(String value1, String value2) {
            addCriterion("EXCEPTION_REPORT_PERIOD between", value1, value2, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andExceptionReportPeriodNotBetween(String value1, String value2) {
            addCriterion("EXCEPTION_REPORT_PERIOD not between", value1, value2, "exceptionReportPeriod");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyIsNull() {
            addCriterion("REPORT_FREQUENCY is null");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyIsNotNull() {
            addCriterion("REPORT_FREQUENCY is not null");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyEqualTo(Float value) {
            addCriterion("REPORT_FREQUENCY =", value, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyNotEqualTo(Float value) {
            addCriterion("REPORT_FREQUENCY <>", value, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyGreaterThan(Float value) {
            addCriterion("REPORT_FREQUENCY >", value, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyGreaterThanOrEqualTo(Float value) {
            addCriterion("REPORT_FREQUENCY >=", value, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyLessThan(Float value) {
            addCriterion("REPORT_FREQUENCY <", value, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyLessThanOrEqualTo(Float value) {
            addCriterion("REPORT_FREQUENCY <=", value, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyIn(List<Float> values) {
            addCriterion("REPORT_FREQUENCY in", values, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyNotIn(List<Float> values) {
            addCriterion("REPORT_FREQUENCY not in", values, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyBetween(Float value1, Float value2) {
            addCriterion("REPORT_FREQUENCY between", value1, value2, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andReportFrequencyNotBetween(Float value1, Float value2) {
            addCriterion("REPORT_FREQUENCY not between", value1, value2, "reportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyIsNull() {
            addCriterion("EXCEPTION_REPORT_FREQUENCY is null");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyIsNotNull() {
            addCriterion("EXCEPTION_REPORT_FREQUENCY is not null");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyEqualTo(Float value) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY =", value, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyNotEqualTo(Float value) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY <>", value, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyGreaterThan(Float value) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY >", value, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyGreaterThanOrEqualTo(Float value) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY >=", value, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyLessThan(Float value) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY <", value, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyLessThanOrEqualTo(Float value) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY <=", value, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyIn(List<Float> values) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY in", values, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyNotIn(List<Float> values) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY not in", values, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyBetween(Float value1, Float value2) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY between", value1, value2, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionReportFrequencyNotBetween(Float value1, Float value2) {
            addCriterion("EXCEPTION_REPORT_FREQUENCY not between", value1, value2, "exceptionReportFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyIsNull() {
            addCriterion("COLLECT_FREQUENCY is null");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyIsNotNull() {
            addCriterion("COLLECT_FREQUENCY is not null");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyEqualTo(Float value) {
            addCriterion("COLLECT_FREQUENCY =", value, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyNotEqualTo(Float value) {
            addCriterion("COLLECT_FREQUENCY <>", value, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyGreaterThan(Float value) {
            addCriterion("COLLECT_FREQUENCY >", value, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyGreaterThanOrEqualTo(Float value) {
            addCriterion("COLLECT_FREQUENCY >=", value, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyLessThan(Float value) {
            addCriterion("COLLECT_FREQUENCY <", value, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyLessThanOrEqualTo(Float value) {
            addCriterion("COLLECT_FREQUENCY <=", value, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyIn(List<Float> values) {
            addCriterion("COLLECT_FREQUENCY in", values, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyNotIn(List<Float> values) {
            addCriterion("COLLECT_FREQUENCY not in", values, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyBetween(Float value1, Float value2) {
            addCriterion("COLLECT_FREQUENCY between", value1, value2, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andCollectFrequencyNotBetween(Float value1, Float value2) {
            addCriterion("COLLECT_FREQUENCY not between", value1, value2, "collectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyIsNull() {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY is null");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyIsNotNull() {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY is not null");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyEqualTo(Float value) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY =", value, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyNotEqualTo(Float value) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY <>", value, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyGreaterThan(Float value) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY >", value, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyGreaterThanOrEqualTo(Float value) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY >=", value, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyLessThan(Float value) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY <", value, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyLessThanOrEqualTo(Float value) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY <=", value, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyIn(List<Float> values) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY in", values, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyNotIn(List<Float> values) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY not in", values, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyBetween(Float value1, Float value2) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY between", value1, value2, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andExceptionCollectFrequencyNotBetween(Float value1, Float value2) {
            addCriterion("EXCEPTION_COLLECT_FREQUENCY not between", value1, value2, "exceptionCollectFrequency");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxIsNull() {
            addCriterion("ALARM_MAX is null");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxIsNotNull() {
            addCriterion("ALARM_MAX is not null");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxEqualTo(Double value) {
            addCriterion("ALARM_MAX =", value, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxNotEqualTo(Double value) {
            addCriterion("ALARM_MAX <>", value, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxGreaterThan(Double value) {
            addCriterion("ALARM_MAX >", value, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxGreaterThanOrEqualTo(Double value) {
            addCriterion("ALARM_MAX >=", value, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxLessThan(Double value) {
            addCriterion("ALARM_MAX <", value, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxLessThanOrEqualTo(Double value) {
            addCriterion("ALARM_MAX <=", value, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxIn(List<Double> values) {
            addCriterion("ALARM_MAX in", values, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxNotIn(List<Double> values) {
            addCriterion("ALARM_MAX not in", values, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxBetween(Double value1, Double value2) {
            addCriterion("ALARM_MAX between", value1, value2, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMaxNotBetween(Double value1, Double value2) {
            addCriterion("ALARM_MAX not between", value1, value2, "alarmMax");
            return (Criteria) this;
        }

        public Criteria andAlarmMinIsNull() {
            addCriterion("ALARM_MIN is null");
            return (Criteria) this;
        }

        public Criteria andAlarmMinIsNotNull() {
            addCriterion("ALARM_MIN is not null");
            return (Criteria) this;
        }

        public Criteria andAlarmMinEqualTo(Double value) {
            addCriterion("ALARM_MIN =", value, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinNotEqualTo(Double value) {
            addCriterion("ALARM_MIN <>", value, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinGreaterThan(Double value) {
            addCriterion("ALARM_MIN >", value, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinGreaterThanOrEqualTo(Double value) {
            addCriterion("ALARM_MIN >=", value, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinLessThan(Double value) {
            addCriterion("ALARM_MIN <", value, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinLessThanOrEqualTo(Double value) {
            addCriterion("ALARM_MIN <=", value, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinIn(List<Double> values) {
            addCriterion("ALARM_MIN in", values, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinNotIn(List<Double> values) {
            addCriterion("ALARM_MIN not in", values, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinBetween(Double value1, Double value2) {
            addCriterion("ALARM_MIN between", value1, value2, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andAlarmMinNotBetween(Double value1, Double value2) {
            addCriterion("ALARM_MIN not between", value1, value2, "alarmMin");
            return (Criteria) this;
        }

        public Criteria andFreezingDayIsNull() {
            addCriterion("FREEZING_DAY is null");
            return (Criteria) this;
        }

        public Criteria andFreezingDayIsNotNull() {
            addCriterion("FREEZING_DAY is not null");
            return (Criteria) this;
        }

        public Criteria andFreezingDayEqualTo(String value) {
            addCriterion("FREEZING_DAY =", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayNotEqualTo(String value) {
            addCriterion("FREEZING_DAY <>", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayGreaterThan(String value) {
            addCriterion("FREEZING_DAY >", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayGreaterThanOrEqualTo(String value) {
            addCriterion("FREEZING_DAY >=", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayLessThan(String value) {
            addCriterion("FREEZING_DAY <", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayLessThanOrEqualTo(String value) {
            addCriterion("FREEZING_DAY <=", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayLike(String value) {
            addCriterion("FREEZING_DAY like", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayNotLike(String value) {
            addCriterion("FREEZING_DAY not like", value, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayIn(List<String> values) {
            addCriterion("FREEZING_DAY in", values, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayNotIn(List<String> values) {
            addCriterion("FREEZING_DAY not in", values, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayBetween(String value1, String value2) {
            addCriterion("FREEZING_DAY between", value1, value2, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andFreezingDayNotBetween(String value1, String value2) {
            addCriterion("FREEZING_DAY not between", value1, value2, "freezingDay");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeIsNull() {
            addCriterion("DEVICE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeIsNotNull() {
            addCriterion("DEVICE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeEqualTo(Date value) {
            addCriterion("DEVICE_TIME =", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeNotEqualTo(Date value) {
            addCriterion("DEVICE_TIME <>", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeGreaterThan(Date value) {
            addCriterion("DEVICE_TIME >", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("DEVICE_TIME >=", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeLessThan(Date value) {
            addCriterion("DEVICE_TIME <", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeLessThanOrEqualTo(Date value) {
            addCriterion("DEVICE_TIME <=", value, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeIn(List<Date> values) {
            addCriterion("DEVICE_TIME in", values, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeNotIn(List<Date> values) {
            addCriterion("DEVICE_TIME not in", values, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeBetween(Date value1, Date value2) {
            addCriterion("DEVICE_TIME between", value1, value2, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andDeviceTimeNotBetween(Date value1, Date value2) {
            addCriterion("DEVICE_TIME not between", value1, value2, "deviceTime");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodIsNull() {
            addCriterion("HEART_PERIOD is null");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodIsNotNull() {
            addCriterion("HEART_PERIOD is not null");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodEqualTo(Integer value) {
            addCriterion("HEART_PERIOD =", value, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodNotEqualTo(Integer value) {
            addCriterion("HEART_PERIOD <>", value, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodGreaterThan(Integer value) {
            addCriterion("HEART_PERIOD >", value, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodGreaterThanOrEqualTo(Integer value) {
            addCriterion("HEART_PERIOD >=", value, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodLessThan(Integer value) {
            addCriterion("HEART_PERIOD <", value, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodLessThanOrEqualTo(Integer value) {
            addCriterion("HEART_PERIOD <=", value, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodIn(List<Integer> values) {
            addCriterion("HEART_PERIOD in", values, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodNotIn(List<Integer> values) {
            addCriterion("HEART_PERIOD not in", values, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodBetween(Integer value1, Integer value2) {
            addCriterion("HEART_PERIOD between", value1, value2, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andHeartPeriodNotBetween(Integer value1, Integer value2) {
            addCriterion("HEART_PERIOD not between", value1, value2, "heartPeriod");
            return (Criteria) this;
        }

        public Criteria andUpKeyIsNull() {
            addCriterion("UP_KEY is null");
            return (Criteria) this;
        }

        public Criteria andUpKeyIsNotNull() {
            addCriterion("UP_KEY is not null");
            return (Criteria) this;
        }

        public Criteria andUpKeyEqualTo(String value) {
            addCriterion("UP_KEY =", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyNotEqualTo(String value) {
            addCriterion("UP_KEY <>", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyGreaterThan(String value) {
            addCriterion("UP_KEY >", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyGreaterThanOrEqualTo(String value) {
            addCriterion("UP_KEY >=", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyLessThan(String value) {
            addCriterion("UP_KEY <", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyLessThanOrEqualTo(String value) {
            addCriterion("UP_KEY <=", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyLike(String value) {
            addCriterion("UP_KEY like", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyNotLike(String value) {
            addCriterion("UP_KEY not like", value, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyIn(List<String> values) {
            addCriterion("UP_KEY in", values, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyNotIn(List<String> values) {
            addCriterion("UP_KEY not in", values, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyBetween(String value1, String value2) {
            addCriterion("UP_KEY between", value1, value2, "upKey");
            return (Criteria) this;
        }

        public Criteria andUpKeyNotBetween(String value1, String value2) {
            addCriterion("UP_KEY not between", value1, value2, "upKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyIsNull() {
            addCriterion("DOWN_KEY is null");
            return (Criteria) this;
        }

        public Criteria andDownKeyIsNotNull() {
            addCriterion("DOWN_KEY is not null");
            return (Criteria) this;
        }

        public Criteria andDownKeyEqualTo(String value) {
            addCriterion("DOWN_KEY =", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyNotEqualTo(String value) {
            addCriterion("DOWN_KEY <>", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyGreaterThan(String value) {
            addCriterion("DOWN_KEY >", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyGreaterThanOrEqualTo(String value) {
            addCriterion("DOWN_KEY >=", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyLessThan(String value) {
            addCriterion("DOWN_KEY <", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyLessThanOrEqualTo(String value) {
            addCriterion("DOWN_KEY <=", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyLike(String value) {
            addCriterion("DOWN_KEY like", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyNotLike(String value) {
            addCriterion("DOWN_KEY not like", value, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyIn(List<String> values) {
            addCriterion("DOWN_KEY in", values, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyNotIn(List<String> values) {
            addCriterion("DOWN_KEY not in", values, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyBetween(String value1, String value2) {
            addCriterion("DOWN_KEY between", value1, value2, "downKey");
            return (Criteria) this;
        }

        public Criteria andDownKeyNotBetween(String value1, String value2) {
            addCriterion("DOWN_KEY not between", value1, value2, "downKey");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdIsNull() {
            addCriterion("CURRENT_MESSAGE_ID is null");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdIsNotNull() {
            addCriterion("CURRENT_MESSAGE_ID is not null");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdEqualTo(Integer value) {
            addCriterion("CURRENT_MESSAGE_ID =", value, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdNotEqualTo(Integer value) {
            addCriterion("CURRENT_MESSAGE_ID <>", value, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdGreaterThan(Integer value) {
            addCriterion("CURRENT_MESSAGE_ID >", value, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("CURRENT_MESSAGE_ID >=", value, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdLessThan(Integer value) {
            addCriterion("CURRENT_MESSAGE_ID <", value, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdLessThanOrEqualTo(Integer value) {
            addCriterion("CURRENT_MESSAGE_ID <=", value, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdIn(List<Integer> values) {
            addCriterion("CURRENT_MESSAGE_ID in", values, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdNotIn(List<Integer> values) {
            addCriterion("CURRENT_MESSAGE_ID not in", values, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdBetween(Integer value1, Integer value2) {
            addCriterion("CURRENT_MESSAGE_ID between", value1, value2, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andCurrentMessageIdNotBetween(Integer value1, Integer value2) {
            addCriterion("CURRENT_MESSAGE_ID not between", value1, value2, "currentMessageId");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("REMARK is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("REMARK is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("REMARK =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("REMARK <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("REMARK >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("REMARK >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("REMARK <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("REMARK <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("REMARK like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("REMARK not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("REMARK in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("REMARK not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("REMARK between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("REMARK not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andInstallTimeIsNull() {
            addCriterion("INSTALL_TIME is null");
            return (Criteria) this;
        }

        public Criteria andInstallTimeIsNotNull() {
            addCriterion("INSTALL_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andInstallTimeEqualTo(Date value) {
            addCriterion("INSTALL_TIME =", value, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeNotEqualTo(Date value) {
            addCriterion("INSTALL_TIME <>", value, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeGreaterThan(Date value) {
            addCriterion("INSTALL_TIME >", value, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("INSTALL_TIME >=", value, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeLessThan(Date value) {
            addCriterion("INSTALL_TIME <", value, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeLessThanOrEqualTo(Date value) {
            addCriterion("INSTALL_TIME <=", value, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeIn(List<Date> values) {
            addCriterion("INSTALL_TIME in", values, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeNotIn(List<Date> values) {
            addCriterion("INSTALL_TIME not in", values, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeBetween(Date value1, Date value2) {
            addCriterion("INSTALL_TIME between", value1, value2, "installTime");
            return (Criteria) this;
        }

        public Criteria andInstallTimeNotBetween(Date value1, Date value2) {
            addCriterion("INSTALL_TIME not between", value1, value2, "installTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("CREATE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("CREATE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("CREATE_TIME =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("CREATE_TIME <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("CREATE_TIME >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CREATE_TIME >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("CREATE_TIME <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("CREATE_TIME <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("CREATE_TIME in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("CREATE_TIME not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("CREATE_TIME between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("CREATE_TIME not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("UPDATE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("UPDATE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("UPDATE_TIME =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("UPDATE_TIME <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("UPDATE_TIME >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("UPDATE_TIME >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("UPDATE_TIME <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("UPDATE_TIME <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("UPDATE_TIME in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("UPDATE_TIME not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("UPDATE_TIME between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("UPDATE_TIME not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNull() {
            addCriterion("CREATE_USER_ID is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNotNull() {
            addCriterion("CREATE_USER_ID is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdEqualTo(Integer value) {
            addCriterion("CREATE_USER_ID =", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotEqualTo(Integer value) {
            addCriterion("CREATE_USER_ID <>", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThan(Integer value) {
            addCriterion("CREATE_USER_ID >", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("CREATE_USER_ID >=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThan(Integer value) {
            addCriterion("CREATE_USER_ID <", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("CREATE_USER_ID <=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIn(List<Integer> values) {
            addCriterion("CREATE_USER_ID in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotIn(List<Integer> values) {
            addCriterion("CREATE_USER_ID not in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("CREATE_USER_ID between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("CREATE_USER_ID not between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNull() {
            addCriterion("UPDATE_USER_ID is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNotNull() {
            addCriterion("UPDATE_USER_ID is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdEqualTo(Integer value) {
            addCriterion("UPDATE_USER_ID =", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotEqualTo(Integer value) {
            addCriterion("UPDATE_USER_ID <>", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThan(Integer value) {
            addCriterion("UPDATE_USER_ID >", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("UPDATE_USER_ID >=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThan(Integer value) {
            addCriterion("UPDATE_USER_ID <", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("UPDATE_USER_ID <=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIn(List<Integer> values) {
            addCriterion("UPDATE_USER_ID in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotIn(List<Integer> values) {
            addCriterion("UPDATE_USER_ID not in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("UPDATE_USER_ID between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("UPDATE_USER_ID not between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andResourceCodeIsNull() {
            addCriterion("RESOURCE_CODE is null");
            return (Criteria) this;
        }

        public Criteria andResourceCodeIsNotNull() {
            addCriterion("RESOURCE_CODE is not null");
            return (Criteria) this;
        }

        public Criteria andResourceCodeEqualTo(String value) {
            addCriterion("RESOURCE_CODE =", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeNotEqualTo(String value) {
            addCriterion("RESOURCE_CODE <>", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeGreaterThan(String value) {
            addCriterion("RESOURCE_CODE >", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeGreaterThanOrEqualTo(String value) {
            addCriterion("RESOURCE_CODE >=", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeLessThan(String value) {
            addCriterion("RESOURCE_CODE <", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeLessThanOrEqualTo(String value) {
            addCriterion("RESOURCE_CODE <=", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeLike(String value) {
            addCriterion("RESOURCE_CODE like", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeNotLike(String value) {
            addCriterion("RESOURCE_CODE not like", value, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeIn(List<String> values) {
            addCriterion("RESOURCE_CODE in", values, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeNotIn(List<String> values) {
            addCriterion("RESOURCE_CODE not in", values, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeBetween(String value1, String value2) {
            addCriterion("RESOURCE_CODE between", value1, value2, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andResourceCodeNotBetween(String value1, String value2) {
            addCriterion("RESOURCE_CODE not between", value1, value2, "resourceCode");
            return (Criteria) this;
        }

        public Criteria andIsValidIsNull() {
            addCriterion("IS_VALID is null");
            return (Criteria) this;
        }

        public Criteria andIsValidIsNotNull() {
            addCriterion("IS_VALID is not null");
            return (Criteria) this;
        }

        public Criteria andIsValidEqualTo(String value) {
            addCriterion("IS_VALID =", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidNotEqualTo(String value) {
            addCriterion("IS_VALID <>", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidGreaterThan(String value) {
            addCriterion("IS_VALID >", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidGreaterThanOrEqualTo(String value) {
            addCriterion("IS_VALID >=", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidLessThan(String value) {
            addCriterion("IS_VALID <", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidLessThanOrEqualTo(String value) {
            addCriterion("IS_VALID <=", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidLike(String value) {
            addCriterion("IS_VALID like", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidNotLike(String value) {
            addCriterion("IS_VALID not like", value, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidIn(List<String> values) {
            addCriterion("IS_VALID in", values, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidNotIn(List<String> values) {
            addCriterion("IS_VALID not in", values, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidBetween(String value1, String value2) {
            addCriterion("IS_VALID between", value1, value2, "isValid");
            return (Criteria) this;
        }

        public Criteria andIsValidNotBetween(String value1, String value2) {
            addCriterion("IS_VALID not between", value1, value2, "isValid");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("STATE is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("STATE is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(String value) {
            addCriterion("STATE =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(String value) {
            addCriterion("STATE <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(String value) {
            addCriterion("STATE >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(String value) {
            addCriterion("STATE >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(String value) {
            addCriterion("STATE <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(String value) {
            addCriterion("STATE <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLike(String value) {
            addCriterion("STATE like", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotLike(String value) {
            addCriterion("STATE not like", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<String> values) {
            addCriterion("STATE in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<String> values) {
            addCriterion("STATE not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(String value1, String value2) {
            addCriterion("STATE between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(String value1, String value2) {
            addCriterion("STATE not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdIsNull() {
            addCriterion("COLLECT_DEVICE_ID is null");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdIsNotNull() {
            addCriterion("COLLECT_DEVICE_ID is not null");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdEqualTo(Integer value) {
            addCriterion("COLLECT_DEVICE_ID =", value, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdNotEqualTo(Integer value) {
            addCriterion("COLLECT_DEVICE_ID <>", value, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdGreaterThan(Integer value) {
            addCriterion("COLLECT_DEVICE_ID >", value, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("COLLECT_DEVICE_ID >=", value, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdLessThan(Integer value) {
            addCriterion("COLLECT_DEVICE_ID <", value, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdLessThanOrEqualTo(Integer value) {
            addCriterion("COLLECT_DEVICE_ID <=", value, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdIn(List<Integer> values) {
            addCriterion("COLLECT_DEVICE_ID in", values, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdNotIn(List<Integer> values) {
            addCriterion("COLLECT_DEVICE_ID not in", values, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdBetween(Integer value1, Integer value2) {
            addCriterion("COLLECT_DEVICE_ID between", value1, value2, "collectDeviceId");
            return (Criteria) this;
        }

        public Criteria andCollectDeviceIdNotBetween(Integer value1, Integer value2) {
            addCriterion("COLLECT_DEVICE_ID not between", value1, value2, "collectDeviceId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}